Method and apparatus for a broker entity

ABSTRACT

A method and apparatus for a broker entity is provided. A high-speed embedded firewall, a message-processing router, secure session protocol, transport management, and integrated intrusion detection is provided in a single-chip format.

BACKGROUND OF THE INVENTION

[0001] 1. Technical Field

[0002] The invention relates to secure end-to-end transactions. More particularly, the invention relates to a broker entity having a high-speed embedded firewall, a message-processing router, secure session protocol, transport management, and integrated intrusion detection in a single-chip format.

[0003] 2. Description of the Prior Art

[0004] Computer networks and related devices, such as smart cards, are established media for conducting electronic commerce (e-commerce) and other types of transactions. As with any industry having to do with commerce, the providers of the e-commerce industry technology continually strive to maintain the integrity and validity of the financial transactions for the comfort of users. These systems typically are widely distributed (anywhere in the world) and transmit highly confidential information. There are many security gaps in prior art solutions. In addition, the providers of the e-commerce technology strive to maintain a superior level of speed and efficiency for the user, while keeping the technology development environment up-to-date. Thus, it is currently a challenge to provide a technology that can perform complete, open standards-based, high-speed, and highly secure financial transactions to the satisfaction of users. lnterTrust Technologies Corp. (“InterTrust”) (Santa Clara, Calif.) teaches software access control mechanisms in the standard (standalone computer) as well as the embedded hardware space in a family of disclosures. For example, K. L. Ginter, V. H. Shear, F. J. Spahn, and D. M. Van Wie, Systems and Methods for Secure Transaction Management and Electronic Rights Protection, U.S. Pat. No. 6,427,140 (Jul. 30, 2002) disclose electronic appliances such as computers equipped in such a way as to help ensure that information is accessed and used only in authorized ways, and maintain the integrity, availability, and/or confidentiality of the information. The disclosures teach electronic appliances providing a distributed virtual distribution environment (VDE) that may enforce a secure chain of handling and control stored or disseminated information, for example. According to Ginter, et al, distributed and other operating systems, environments and architectures, such as, for example, those using tamper-resistant hardware-based processors, may establish security at each node.

[0005] T. C. Williams, Multi-level Security Network System, U.S. Pat. No. 6,304,973 (Oct. 16, 2001) discloses a network which prevents unauthorized users from gaining access to confidential information. The network has various workstations and servers connected by a common medium and through a router to the Internet. The network has two major components, a Network Security Center (NSC) and security network interface cards or devices. The NSC is an administrative workstation through which the network security officer manages the network as a whole as well as the individual security devices. The security devices are interposed, between each of workstation, including the NSC, and the common medium and operate at a network layer (layer 3) of the protocol hierarchy. The network allows trusted users to access outside information, including the Internet, while stopping outside attackers at their point of entry. At the same time, the network limits an unauthorized insider to information defined in their particular security profile. The user may select which virtual network to access at any given time. The result is trusted access to multiple secure Virtual Private Networks (VPN), all from a single desktop machine.

[0006] Williams focuses on the multi-level secure VPN space with some access control capability based on the actual content of the network data stream running through the device. That is, Williams is limited in that it teaches simply a filter encompassing the notion of a multi-level secure VPN for network secures VPNs that filters and allows access for network connections based on data content.

[0007] Lucent teaches secure gathering and monitoring of web server logs, currently implemented within many products in the marketplace today. It should be appreciated that the Lucent disclosure is limited by being Web-based and its log entries are not secure.

[0008] It would be advantageous to create a secure end-to-end financial transactional messaging environment in an integrated package leveraging complete, open standards-based, high-speed and highly secure technology which integrates a firewall, VPN, intrusion detection and tamper resistant audit; secure logging, and fault tolerance over IP networks.

[0009] It would also be advantageous to provide multiple simultaneous transactions, which are multilevel and secure by having application objects running inside a broker entity as multilevel secure streams enter and leave, thereby a providing more sophisticated technology than mere filtering.

SUMMARY OF THE INVENTION

[0010] A method and apparatus for a broker entity is provided. A high-speed embedded firewall, a message-processing router, secure session protocol, transport management, and integrated intrusion detection is provided in a single-chip format.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a schematic diagram of the components of the broker entity and its relationship to other such broker entities according to the invention.

DETAILED DESCRIPTION OF THE INVENTION

[0012] A method and apparatus for a message broker entity is provided. A high-speed embedded firewall, a message-processing router, secure session protocol, transport management, and integrated intrusion detection is provided in a single-chip format. It should be appreciated that the broker entity can be implemented as a collection of conceptual and/or software modules residing on one or more computers across a network, and can equally be implemented in hardware as an integrated circuit on a chip connected across the network to other such chips or software modules.

[0013] A preferred embodiment of the invention is a message broker entity, or broker entity for short, implemented as an integrated circuit for financial messaging. Just as traditional integrated circuits contain embedded components, the preferred embodiment of the invention contains embedded components working together to handle elements of communication, message processing, and security. The preferred embodiment of the invention combines a firewall, a virtual private network (VPN), a transport manager, an intrusion detection feature, a secure logger, a message processor, a message forwarder, a directory service, and a cryptographic processor. When such features are combined into a high-speed hardware device, they bring to market an end-to-end and open and secure e-commerce transactional environment. All message processing, routing, and security sensitive operations, such as creating or tearing down secure sessions with other broker entities, takes place in secure high-speed hardware.

[0014] The broker entity integrates the following concepts:

[0015] A self-repairing transactional mesh with integrated failover when security relevant events or service interruption are detected at any node. For example, if a node is breached or rendered inoperable, then the system reconfigures itself to complete the transaction and remain operable. One example of enabling the mesh to reconfigure itself is by a setting up to run a script at each node, instructing it how to react. The reaction can be policy-based. It can suggest alternative actions, such as turning itself off if it gets inundated with too many junk messages.

[0016] Integrated hardware-based cryptographic operations, a suite of cryptographic algorithms are available onboard in secure hardware for any transaction.

[0017] Hardware-based state machine technology, capable of loading C/C++ as well as Java-based objects for onboard execution.

[0018] Application objects as well as network connections are stored/routed/executed in a true multi-level secure memory space, such as B2.

[0019] Providing a hardware-based XML parser, for parsing and performing operations on XML objects within a secure embedded memory space.

[0020] Security filtering and logging can be performed on encrypted network streams as they enter the secure embedded memory space.

[0021] In one embodiment of the invention, each broker entity board contains multiple embedded XML parsers, where some or all of such boards are placed in a rack-mountable system, and where some or all of such rack-mountable systems are interconnected, resulting in a multi-gigabit high-speed backplane. In this embodiment of the invention, the broker entity can be viewed as a virtual private transaction processor with Web services support.

[0022] A preferred embodiment of the invention is described with reference to FIG. 1, a schematic diagram of the components of the broker entity and its relationship to other such broker entities. Such layout in the diagram is meant to be by example only of one application of the invention, as a limitless number of configurations of broker entities are possible.

[0023] A broker entity 150 is represented in a dotted oval figure as a combination of six distinct components. Each component will be discussed in further detail below. The broker entity 150 is shown connected across a network to a couple of other such broker entities 101 and 102, that are also connected to a fourth broker entity 103. The secure protocol in the preferred embodiment is SSUWTLS/IPSEC 104, but it should be appreciated that the invention is not limited to this particular type of connection. The broker entity 150 is connected to one broker entity 101 across a private network 105, and is also connected across the Internet 106 to the other broker entity 102. These two broker entities 101 and 102 are connected to the fourth broker entity 103 across the Internet 106. It should be appreciated that these connections are examples of connections only. The connections can be simply any network connections.

[0024] From a high level perspective, the schematic diagram shows the mesh architecture of broker entities, each a self-contained, static core engine, and each communicating with one another. The mesh architecture is a combination of broker entities spanning one-to-many and many-to-one relationships. Each broker entity capable of determining XML status, discovery, and secure negotiation protocol, where each secure session can be negotiated and destroyed dynamically, in a cache that is updated frequently.

[0025] The preferred embodiment of the invention provides subscription architecture enabling the broker entity to be connected to subscribing systems anywhere in the world. The subscriber communicates with the broker entity by sending messages to the broker entity, which communicates with the subscriber both as a consumer and as a producer of messages. The broker entity is capable of interacting with a variety of different sources of data.

[0026] The subscriber can be represented as any data source. For example, the data source can be an application database of a backend system 108, or as a data source in any DB2 environment, such as, for example, the policy-engine-message-dictionary message storage 109 depicted in FIG. 1. It should be appreciated that in the preferred embodiment of the invention, broker entity clients 110 subscribe to a shared XML space using a particular broker API or message adapter in a point-to-point or publish and subscribe configuration.

[0027] The preferred embodiment of the broker entity 150 contains the following six components or conceptual modules: external module API 151; secure execution engine 152; protocol handler 153; message cache and routing table 154; XML and regular expression parser 155; and adapter or XML message API 156.

[0028] The external module API 151 and the adapter or XML message API 156 are the interface components or modules to the subscribing clients. The router component or module 154 keeps a table of all broker entities that it trusts and services in high-speed cache. The protocol handler 153 allows communication with other such broker entities across a network and has dynamic capability. It is preferably installed at different contact points within a network. It allows setting and following a security policy that chooses acceptable protocol. The message cache and routing table 154 provides caching in the case that a connection breaks down. It holds onto a request until it can be fulfilled. The routing table 154 also provides the status of available devices. The routing table 154 is kept in memory and is updated frequently to reflect the current security level of the broker entity at hand, the services the broker entity provides and/or subscribes to, and detected presence of other broker entities. The XML and regular expression parser 155 is preferably embedded in hardware for performing character parsing in high speed. The external module API 151 loads, i.e. stores, configuration information and data about outside systems. Essentially it defines outside systems as a way to enable communicating with them. The adapter or XML message API 156 provides a way of defining new data for any type of system, such as message types and rules, by providing an open, standardized API to systems of record and/or to any database.

[0029] It should be appreciated that the preferred embodiment of the invention is implemented as an appliance operating in a plug-and-play fashion. Its major functionality is implemented onboard using Application-Specific Integrated Circuit (ASIC) and Field Programmable Gate-Array (FPGA) technology. It processes messages and transacts securely over networks at multi-gigabit wire-speeds. The embodiment uses a router that communicates in Extensible Markup Language (XML), enabling the router to be extensible and capable of expressing practically any type of structured financial message.

[0030] The preferred embodiment of the invention discovers or detects the presence of other such broker entities, as well as the services they offer or the services that subscribe to them. Transactions between the broker entity and other such brokers and/or any services attached to those brokers are secure transactions. For example, a first broker entity is notified by a client that the client is online. The first broker entity then notifies a second broker entity, or one of its connected services, that it has a message from the client and routes the message to the second broker entity accordingly.

[0031] More specifically, the preferred embodiment of the invention provides a directory of all of broker entities with which it communicates and trusts and/or their respective services. A copy of this directory is resident on onboard high-speed cache. The directory is updated in real-time. When a particular broker entity or service which subscribes to it directly goes down, the broker entity notifies other broker entities on the list and communicates that that broker entity and/or particular services are unavailable for transactions. The opposite occurs when a broker entity or its subscribing services come online. In this case, the broker entity notifies the other broker entities it trusts that it and/or its services have come online for transactions.

[0032] For discovery, the preferred embodiment of the invention uses basic XML-based protocol to discover and set up services it will process and messages it will receive from or send to other broker entities. Also, as the Universal Description, Discovery and Integration (UDDI) specification matures, the preferred embodiment of the invention adaptably looks up and registers new services and connection rules as they become available online.

[0033] The preferred embodiment of the invention also has a transport handler component or module and basic messaging protocol capability. This component or module is adapted to be flashed with new transport protocols and conversation messages, as appropriate. [

[0034] The preferred embodiment of the invention also provides a message handling agreement or contracts conceptual component or module that allows agreements to be configured on all message exchanges. Examples of such configured messages reflect timeout values, latency period, round-trip times, and allowable return messages. If agreements are violated, the broker entity is configurable to perform alternate procedures, such as, for example, send a response to the requester or take another action, such as consult a set of alternate delivery methods or locations. It should be appreciated that these alternate procedures are by example only.

[0035] For secure session protocol, the preferred embodiment of the invention sets up, dynamically or with a pre-established contract, a Secure Sockets Layer/WTLS/lnternet Protocol Security (SSIJWTLS/IPSEC) connection with other broker entities.

[0036] Also, in a preferred embodiment of the invention, the router selectively encrypts/decrypts XML messages, as well as sometimes verifies signatures on XML messages at the tag level flowing through it. The broker entity expresses trust relationships and transactions using compact certificate technology, where each broker entity has a transaction definition table to decode transaction certificates it receives from other broker entities.

[0037] The preferred embodiment of the invention understands messages based on a message dictionary and a corresponding API. Using the message dictionary, the broker entity processes and forwards virtually any type of structured message. Specifically, the router is loaded with virtually any type of XML-based messaging protocol, and the processing and security rules are then custom-defined for the loaded protocol by configuring the appropriate router subsystem

[0038] It should be appreciated that the core code of the broker entity implementing permissions and authentication resides in protective memory, in an embedded implementation, i.e. a hard real-time kernel.

[0039] It should also be appreciated that the preferred embodiment of the invention also calls gateway adapters to other messaging or application systems, such as, for example, MQ-Series. The broker entity communicates directly with Common Object Request Broker Architecture (CORBA) or Enterprise JavaBeans (EJBs) via the Simple Object Access Protocol (SOAP) protocol.

[0040] The preferred embodiment of the invention also provides maintenance interface enabling code running onboard that is updated without requiring the broker entity be shutdown, the interface also allowing system level testing to be performed. A secure remote administration utility is provided that allows all components or modules of the broker entity to be monitored and configured while it in operation.

[0041] Accordingly, although the invention has been described in detail with reference to particular preferred embodiments, persons possessing ordinary skill in the art to which this invention pertains will appreciate that various modifications and enhancements may be made without departing from the spirit and scope of the claims that follow. 

1. An apparatus for providing an end-to end, open, and secure commerce transactional environment, comprising: an external module API; a secure execution engine; a protocol handler; a message cache and routing table component; an XML and regular expression parser; and an XML message API.
 2. The apparatus of claim 1, wherein said external module API and said XML message API are interface components to subscribing clients.
 3. The apparatus of claim 1, wherein said protocol handler allows communication with other such broker entities across a network, wherein said network is any of, but is not limited to a virtual private network and the Internet.
 4. The apparatus of claim 1, wherein said protocol handler can negotiate and destroy secure sessions dynamically.
 5. The apparatus of claim 1, wherein said protocol handler is installed at different contact points within a network.
 6. The apparatus of claim 1, wherein said protocol handler allows setting and following a security policy that chooses acceptable protocol.
 7. The apparatus of claim 1, wherein said message cache and routing table component provides a table in high-speed cache that is updated in real-time of all broker entities and corresponding services that are trusted.
 8. The apparatus of claim 1, wherein said message cache and routing table component provides status of available devices.
 9. The apparatus of claim 1, wherein said message cache and routing table component provides current security level, services provided, services subscribed to, and indications of detected presence of other broker entities, services offered by said other detected broker entities, or services to which said other detected broker entities subscribe.
 10. The apparatus of claim 1, wherein when a network connection breaks down said message cache and routing table component holds onto a request until the request can be fulfilled.
 11. The apparatus of claim 1, wherein said XML and regular expression parser is embedded in hardware for performing character parsing in high speed.
 12. The apparatus of claim 1, wherein said external module API stores configuration information and data about outside systems.
 13. The apparatus of claim 1, wherein said XML message API provides an open, standardized API to systems of record and/or to any database.
 14. The apparatus of claim 13, wherein said XML message API provides message types and rules information.
 15. The apparatus of claim 1, further comprising: functionality onboard using Application-Specific Integrated Circuit (ASIC) and Field Programmable Gate-Array (FPGA) technology.
 16. The apparatus of claim 1, further comprising: means for discovering other broker entities and setting up services to other broker entities using basic XML-based protocol.
 17. The apparatus of claim 1, further comprising: Universal Description, Discovery and Integration (UDDI) specification for looking up and registering new services and connection rules as they become available online.
 18. The apparatus of claim 1, further comprising: means for flashing with new transport protocols and basic messaging protocols.
 19. The apparatus of claim 1, further comprising: means for allowing agreements to be configured on message exchanges, resulting in, but not limited to, configured messages.
 20. The apparatus of claim 19, wherein said configured messages comprise, but are not limited to, timeout values, latency period, round-trip times, and allowable return messages.
 21. The apparatus of claim 19, further comprising: means for configuring to perform alternate procedures when said agreements are violated.
 22. The apparatus of claim 1, further comprising: when a broker entity or subscribing service becomes available for transactions or becomes unavailable for transactions, means for notifying other broker entities on said table.
 23. The apparatus of claim 1, further comprising: a Secure Sockets Layer/WTLS/lnternet Protocol Security (SSL/WTLS/IPSEC) connection with other broker entities.
 24. The apparatus of claim 1, further comprising: means for selectively encrypting/decrypting XML messages and verifying signatures on XML messages at tag level.
 25. The apparatus of claim 1, further comprising: means for using compact certificate technology, wherein each broker entity has a transaction definition table to decode transaction certificates received from other broker entities.
 26. The apparatus of claim 1, further comprising: a message dictionary data source and a corresponding API for custom-defined the processing and security rules.
 27. The apparatus of claim 1, wherein permissions and authentication processing is embedded in a hard real-time kernel.
 28. The apparatus of claim 1, further comprising: means for communicating with , but not limited to, MQ-Series and Common Object Request Broker Architecture (CORBA) and Enterprise JavaBeans (EJBs) via the Simple Object Access Protocol (SOAP) protocol.
 29. The apparatus of claim 1, further comprising: maintenance interface enabling code running onboard allowing updating and system level testing to be performed while in operation.
 30. The apparatus of claim 1, further comprising: subscription architecture for connecting to subscribing systems anywhere in the world, wherein a subscriber is any data source subscribing to a shared XML space in either of, but not limited to, a point-to-point or publish and subscribe configuration.
 31. A method for providing an end-to end, open, and secure commerce transactional environment, comprising the steps of: providing an external module API; providing a secure execution engine; providing a protocol handler; providing a message cache and routing table component; providing an XML and regular expression parser; and providing an XML message API.
 32. The method of claim 31, wherein said external module API and said XML message API are interface components to subscribing clients.
 33. The method of claim 31, wherein said protocol handler allows communication with other such broker entities across a network, wherein said network is any of, but is not limited to a virtual private network and the Internet.
 34. The method of claim 31, wherein said protocol handler can negotiate and destroy secure sessions dynamically.
 35. The method of claim 31, wherein said protocol handler is installed at different contact points within a network.
 36. The method of claim 31, wherein said protocol handler allows setting and following a security policy that chooses acceptable protocol.
 37. The method of claim 31, wherein said message cache and routing table component provides a table in high-speed cache that is updated in real-time of all broker entities and corresponding services that are trusted.
 38. The method of claim 31, wherein said message cache and routing table component provides status of available devices.
 39. The method of claim 31, wherein said message cache and routing table component provides current security level, services provided, services subscribed to, and indications of detected presence of other broker entities, services offered by said other detected broker entities, or services to which said other detected broker entities subscribe.
 40. The method of claim 31, wherein when a network connection breaks down said message cache and routing table component holds onto a request until the request can be fulfilled.
 41. The method of claim 31, wherein said XML and regular expression parser is embedded in hardware for performing character parsing in high speed.
 42. The method of claim 31, wherein said external module API stores configuration information and data about outside systems.
 43. The method of claim 31, wherein said XML message API provides an open, standardized API to systems of record and/or to any database.
 44. The method of claim 43, wherein said XML message API provides message types and rules information.
 45. The method of claim 31, further comprising the step of: using Application-Specific Integrated Circuit (ASIC) and Field Programmable Gate-Array (FPGA) technology.
 46. The method of claim 31, further comprising the step of: discovering other broker entities and setting up services to other broker entities using basic XML-based protocol.
 47. The method of claim 31, further comprising the step of: using Universal Description, Discovery and Integration (UDDI) specification for looking up and registering new services and connection rules as they become available online.
 48. The method of claim 31, further comprising the step of: flashing with new transport protocols and basic messaging protocols.
 49. The method of claim 31, further comprising the step of: allowing agreements to be configured on message exchanges, resulting in, but not limited to, configured messages.
 50. The method of claim 49, wherein said configured messages comprise, but are not limited to, timeout values, latency period, round-trip times, and allowable return messages.
 51. The method of claim 49, further comprising the step of: configuring to perform alternate procedures when said agreements are violated.
 52. The method of claim 31, further comprising the step of: when a broker entity or subscribing service becomes available for transactions or becomes unavailable for transactions, notifying other broker entities on said table.
 53. The method of claim 31, further comprising the step of: providing a Secure Sockets Layer/WTLS/Internet Protocol Security (SSLUWTLS/IPSEC) connection with other broker entities.
 54. The method of claim 31, further comprising the step of: selectively encrypting/decrypting XML messages and verifying signatures on XML messages at tag level.
 55. The method of claim 31, further comprising the step of: using compact certificate technology, wherein each broker entity has a transaction definition table to decode transaction certificates received from other broker entities.
 56. The method of claim 31, further comprising the step of: providing a message dictionary data source and a corresponding API for custom-defined the processing and security rules.
 57. The method of claim 31, wherein permissions and authentication processing is embedded in a hard real-time kernel.
 58. The method of claim 31, further comprising the step of: communicating with, but not limited to, MQ-Series and Common Object Request Broker Architecture (CORBA) and Enterprise JavaBeans (EJBS) via the Simple Object Access Protocol (SOAP) protocol.
 59. The method of claim 31, further comprising the step of: providing maintenance interface enabling code running onboard allowing updating and system level testing to be performed while in operation.
 60. The method of claim 31, further comprising the step of: providing subscription architecture for connecting to subscribing systems anywhere in the world, wherein a subscriber is any data source subscribing to a shared XML space in either of, but not limited to, a point-to-point or publish and subscribe configuration.
 61. A high-speed hardware device for end-to-end, open, and secure financial transactions, comprising: a firewall; a virtual private network (VPN); a transport manager; an intrusion detection feature; a secure logger; a message processor; a message forwarder; a directory service; and a cryptographic processor.
 62. An apparatus for end-to-end, open, and secure financial transactions, comprising: a self-repairing transactional mesh with integrated failover when security relevant events or service interruption are detected at any node; integrated hardware-based cryptographic operations for any transaction; hardware-based state machine technology, capable of loading C/C++ as well as Java-based objects for onboard execution; means for storing, routing, and executing application objects and network connections in a multi-level secure memory space; a hardware-based XML parser, for parsing and performing operations on XML objects within said secure memory space; and means for performing security filtering and logging on encrypted network streams as said streams enter said secure memory space.
 63. A method for providing a multi-gigabit high-speed backplane, comprising the steps of: providing multiple embedded XML parsers broker entity boards; placing some or all of said boards in rack-mountable systems; and interconnecting some or all of said rack-mountable systems. 